package Day18.Inner05;

/**
 * @author HYHwtx
 * @version 1.0
 * @date 2022/2/25 16:11
 */

/**1. 有一个铃声 Bell,里面有一个方法
 * 2.有一个手机类 CellPhone，具有闹钟的功能 alarmclock，
 * 参数是 Bell 类型 3.测试手机类的闹钟功能，通过匿名内部类(对象)作为参数，
 * 打印：懒猪起床了。
 * 4.在传入另外一个匿名内部类，打印，兄弟们上课了
 * */
public class InnerTest {
    public static void main(String[] args) {
        CellPhone cellPhone = new CellPhone();

        /*
        * 1.传递的是实现了Bell接口的匿名内部类
        * 2.重写了ring类
        *  3.相当于 Bell= new Bell() {
            @Override
            public void ring() {
                System.out.println("懒猪起床了");
            }
        });
        * */
        cellPhone.alarmclock(new Bell() {
            @Override
            public void ring() {
                System.out.println("懒猪起床了！！！");
            }
        });
        cellPhone.alarmclock(new Bell() {
            @Override
            public void ring() {
                System.out.println("兄弟们上课了！！！");
            }
        });
    }
}
interface Bell{
    void ring();//方法
}
class CellPhone{
    public void alarmclock(Bell bell){
        bell.ring();
    }
}
